﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x02000473 RID: 1139
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class EnterSceneByServerScNotify : IMessage<EnterSceneByServerScNotify>, IMessage, IEquatable<EnterSceneByServerScNotify>, IDeepCloneable<EnterSceneByServerScNotify>, IBufferMessage
	{
		// Token: 0x17000EAE RID: 3758
		// (get) Token: 0x06003353 RID: 13139 RVA: 0x0008D37B File Offset: 0x0008B57B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<EnterSceneByServerScNotify> Parser
		{
			get
			{
				return EnterSceneByServerScNotify._parser;
			}
		}

		// Token: 0x17000EAF RID: 3759
		// (get) Token: 0x06003354 RID: 13140 RVA: 0x0008D382 File Offset: 0x0008B582
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return EnterSceneByServerScNotifyReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x17000EB0 RID: 3760
		// (get) Token: 0x06003355 RID: 13141 RVA: 0x0008D394 File Offset: 0x0008B594
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return EnterSceneByServerScNotify.Descriptor;
			}
		}

		// Token: 0x06003356 RID: 13142 RVA: 0x0008D39B File Offset: 0x0008B59B
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EnterSceneByServerScNotify()
		{
		}

		// Token: 0x06003357 RID: 13143 RVA: 0x0008D3A4 File Offset: 0x0008B5A4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EnterSceneByServerScNotify(EnterSceneByServerScNotify other) : this()
		{
			this.scene_ = ((other.scene_ != null) ? other.scene_.Clone() : null);
			this.lineup_ = ((other.lineup_ != null) ? other.lineup_.Clone() : null);
			this.reason_ = other.reason_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x06003358 RID: 13144 RVA: 0x0008D40C File Offset: 0x0008B60C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EnterSceneByServerScNotify Clone()
		{
			return new EnterSceneByServerScNotify(this);
		}

		// Token: 0x17000EB1 RID: 3761
		// (get) Token: 0x06003359 RID: 13145 RVA: 0x0008D414 File Offset: 0x0008B614
		// (set) Token: 0x0600335A RID: 13146 RVA: 0x0008D41C File Offset: 0x0008B61C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public SceneInfo Scene
		{
			get
			{
				return this.scene_;
			}
			set
			{
				this.scene_ = value;
			}
		}

		// Token: 0x17000EB2 RID: 3762
		// (get) Token: 0x0600335B RID: 13147 RVA: 0x0008D425 File Offset: 0x0008B625
		// (set) Token: 0x0600335C RID: 13148 RVA: 0x0008D42D File Offset: 0x0008B62D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public LineupInfo Lineup
		{
			get
			{
				return this.lineup_;
			}
			set
			{
				this.lineup_ = value;
			}
		}

		// Token: 0x17000EB3 RID: 3763
		// (get) Token: 0x0600335D RID: 13149 RVA: 0x0008D436 File Offset: 0x0008B636
		// (set) Token: 0x0600335E RID: 13150 RVA: 0x0008D43E File Offset: 0x0008B63E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public EnterSceneReason Reason
		{
			get
			{
				return this.reason_;
			}
			set
			{
				this.reason_ = value;
			}
		}

		// Token: 0x0600335F RID: 13151 RVA: 0x0008D447 File Offset: 0x0008B647
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as EnterSceneByServerScNotify);
		}

		// Token: 0x06003360 RID: 13152 RVA: 0x0008D458 File Offset: 0x0008B658
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(EnterSceneByServerScNotify other)
		{
			return other != null && (other == this || (object.Equals(this.Scene, other.Scene) && object.Equals(this.Lineup, other.Lineup) && this.Reason == other.Reason && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06003361 RID: 13153 RVA: 0x0008D4BC File Offset: 0x0008B6BC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.scene_ != null)
			{
				num ^= this.Scene.GetHashCode();
			}
			if (this.lineup_ != null)
			{
				num ^= this.Lineup.GetHashCode();
			}
			if (this.Reason != EnterSceneReason.None)
			{
				num ^= this.Reason.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06003362 RID: 13154 RVA: 0x0008D52D File Offset: 0x0008B72D
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06003363 RID: 13155 RVA: 0x0008D535 File Offset: 0x0008B735
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06003364 RID: 13156 RVA: 0x0008D540 File Offset: 0x0008B740
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.scene_ != null)
			{
				output.WriteRawTag(18);
				output.WriteMessage(this.Scene);
			}
			if (this.lineup_ != null)
			{
				output.WriteRawTag(74);
				output.WriteMessage(this.Lineup);
			}
			if (this.Reason != EnterSceneReason.None)
			{
				output.WriteRawTag(80);
				output.WriteEnum((int)this.Reason);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06003365 RID: 13157 RVA: 0x0008D5B8 File Offset: 0x0008B7B8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.scene_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.Scene);
			}
			if (this.lineup_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.Lineup);
			}
			if (this.Reason != EnterSceneReason.None)
			{
				num += 1 + CodedOutputStream.ComputeEnumSize((int)this.Reason);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x06003366 RID: 13158 RVA: 0x0008D628 File Offset: 0x0008B828
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(EnterSceneByServerScNotify other)
		{
			if (other == null)
			{
				return;
			}
			if (other.scene_ != null)
			{
				if (this.scene_ == null)
				{
					this.Scene = new SceneInfo();
				}
				this.Scene.MergeFrom(other.Scene);
			}
			if (other.lineup_ != null)
			{
				if (this.lineup_ == null)
				{
					this.Lineup = new LineupInfo();
				}
				this.Lineup.MergeFrom(other.Lineup);
			}
			if (other.Reason != EnterSceneReason.None)
			{
				this.Reason = other.Reason;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x06003367 RID: 13159 RVA: 0x0008D6BC File Offset: 0x0008B8BC
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x06003368 RID: 13160 RVA: 0x0008D6C8 File Offset: 0x0008B8C8
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 18U)
				{
					if (num != 74U)
					{
						if (num != 80U)
						{
							this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
						}
						else
						{
							this.Reason = (EnterSceneReason)input.ReadEnum();
						}
					}
					else
					{
						if (this.lineup_ == null)
						{
							this.Lineup = new LineupInfo();
						}
						input.ReadMessage(this.Lineup);
					}
				}
				else
				{
					if (this.scene_ == null)
					{
						this.Scene = new SceneInfo();
					}
					input.ReadMessage(this.Scene);
				}
			}
		}

		// Token: 0x04001425 RID: 5157
		private static readonly MessageParser<EnterSceneByServerScNotify> _parser = new MessageParser<EnterSceneByServerScNotify>(() => new EnterSceneByServerScNotify());

		// Token: 0x04001426 RID: 5158
		private UnknownFieldSet _unknownFields;

		// Token: 0x04001427 RID: 5159
		public const int SceneFieldNumber = 2;

		// Token: 0x04001428 RID: 5160
		private SceneInfo scene_;

		// Token: 0x04001429 RID: 5161
		public const int LineupFieldNumber = 9;

		// Token: 0x0400142A RID: 5162
		private LineupInfo lineup_;

		// Token: 0x0400142B RID: 5163
		public const int ReasonFieldNumber = 10;

		// Token: 0x0400142C RID: 5164
		private EnterSceneReason reason_;
	}
}
